Introduction

NOTE: THIS IS A DRAFT. I will be adding screenshots & links where applicable before the final draft is completed.

During the first half of October, the Republican National Committee and Donald J. Trump For President, Inc. purchased and ran ads on Facebook that contained the statement, “Your vote has not been counted.”

[will include some screenshots here]

Common Cause’s Becky Timmons published an article [link] on 15 October 2020 that drew attention to these ads. She noted that Common Cause’s disinformation team brought these advertisements to Facebook’s attention due to the concern that the ads “were misleading and had the potential to cause confusion to voters.” More specifically, Timmons explained that “people could see this [ad] and believe their already-cast vote hadn’t been counted, won’t count, or was discarded,” which sows distrust in the election process and violates Facebook’s advertising policies.

Facebook, according to Timmons, agreed with Common Cause’s concerns and removed ads containing the statement “Your vote has not been counted” from circulation on Monday, October 12.

Timmons noted that the ads were targeting Facebook users in key swing states such as Florida and Michigan However, her article does not contain additional information about:

  1. Who produced the ads
  2. How much money was spent on the ads
  3. How widely the ads circulated
  4. Which demographics the ads targeted

Echoing Timmons’s concern that the advertisements’ ambiguous messaging could be “damaging to voters,” this article answers the questions posed above, evaluating the nature and scope of the ads’ reach before Facebook removed them from circulation.

Data collection

Using Python, I constructed a Facebook Ad Library API query that exhaustively collected all ads that met the following conditions:

This query returned 5,111 ads. Facebook’s API looks for each word in a search query individually, regardless of where they appear in the ad. I filtered the API’s results using R to include only messages that include, word-for-word, “Your vote has not been counted.” Performing this filter resulted in a set of 1,283 ads.

Facebook’s Ad Library API returns spending and impression ranges for each ad in its Ad Library. To perform calculations using this data, I follow a commonly-used approach here, which is to take the midpoint of the lower and upper spending and impression bounds that Facebook provides.

The Ad Library API also provides information about target demographics — state, gender, and age — in percentage format. In some cases below, I look at what percentage of a demographic a set of ads reached on average: this is simply the mean of each demographic’s percentages.

In other cases, I provide the average cost of 1,000 ad impressions, which lets us compare whether it is more or less expensive to target certain demographics. Calculating this value for a given demographic requires three steps:

Summary of findings

Who ran the ads?

A majority of the ads that were purchased — 1,121, about 87% — were funded by the Republican National Committee (RNC), which ran the ads on the official GOP Facebook page. The remaining 162 ads were funded by Donald J. Trump For President, Inc. and were associated with Trump’s official Facebook page and two state-specific pages supporting Trump (Michigan and Minnesota, both swing states in the 2020 presidental election).

How much was spent on the ads?

The below plots visualize how the total sum of money spent ($448,308.5 USD, top barplot) and total number of impressions (just over 17 million, bottom barplot) were distributed across the Facebook pages that the ads ran on.

The volume of money spent on each page roughly corresponds with the volume of ads that the advertisers ran on each page.

However, the cost of ad impressions depend on factors such as the ad’s target demographics. We can better compare how these pages differed in their spending by looking at how much, on average, 1,000 impressions cost for ads that ran on each page:

We can see that, on average, the GOP’s impressions were the most expensive, while impressions on Donald J. Trump’s page were the least expensive. Trump For Michigan and Trump For Minnesota sit in the middle, with 1,000 impressions costing, on average, between $62.7 and $52, respectively.

Which demographics did the ads target?

Regions

We can compare spending and impression data by state. The first map below visualizes the raw sum of impressions that the 1,283 ads collectively generated in each state.

As Common Cause reported, Florida and Michigan, two key swing states, received the most ad views. However, we can also see that several other states, all of which are currently forecasted by the Cook Report as either toss-up or leaning-democrat, were targeted in large volumes as well. From most impressions to least, these states are: Pennsylvania, Georgia, Minnesota, and Wisconsin.

Next, we can look at how much, on average, 1,000 ad impressions cost by state.

We can see that the states that advertisers targeted the most were also the most expensive states to target to. However, the cost of 1,000 impressions fluctuates among these states. Minnesota was the most expensive state to target, averaging a cost of $69 for 1,000 impressions, while Florida was the most affordable of the states that advertisers focused their targeting to, averaging $51 for 1,000 impressions.

We can also see some variety between less-frequently targeted states, which generally accrued between 1,000 and 30,000 impressions in total. 1,000 impressions in states such as California, Texas, Ohio, and New York cost, on average, between $33-$35. By contrast, 1,000 impressions in states such as Wyoming, West Virginia, Maine, and Vermont cost, on average, between $22-$25.

If we compare the total number of impressions that each page accrued, differences surface in which state(s) the pages targeted.

Ads that ran on the GOP’s Facebook page overwhelmingly targeted the largest set of states, while Donald J. Trump’s and Trump For Michigan’s targeting was concentrated among midwestern states–Michigan, especially. Trump For Minnesota, unlike Trump For Minnesota, only targeted its nominal state.

Gender

The four pages differed in their gender targeting. Below, we see the percentage of women and men that ads, on average, reached. Note that the below visualizations do not include the percentage of users of “unknown” gender that were targeted. Additionally, because these are average percentages, a given page’s averages may not total 100%.

Donald J. Trump typically targeted men and women in equal proprotions. Both GOP and Trump For Michigan targeted women more than men, though the proportional difference is higher for GOP than Trump For Michigan. The only page that tended to target men more often than women was Trump For Minnesota, where 60% of ads targeted men and 40% targeted women, on average.

Below, we can see how much, on average, it cost each page to accrue 1,000 impressions among women versus men.

Although some pages targeted one gender more often than another, the average cost to reach either gender is consistent within each page, indicating that cost differences emerge from other factors, such as the states that are being targeted.

Age

The below chart visualizes the average percent of ad impressions that reached the age brackets that Facebook provides information about. The 13-17 age bracket was removed from these visualizations because they represent barely a fraction of a percent of impressions. And, to reiterate, using average percentages means that a given page’s averages may not total 100%.

We can see above that the GOP and Donald J. Trump targeted users aged 25-64 relatively consistently. The two state-specific pages, however, targeted the 55-64 age bracket more frequently. It appears that the increased targeted to this age bracket may have come at the expensive of targeted the 25-34 age bracket – only 10% of the pages’ impressions were from these groups on average, compared to an average of 20% for Donald J. Trump and GOP.

Once again, we can also look at the average cost of 1,000 impressions:

For the GOP, 1,000 impressions targeting the 18-24 age bracket typically cost ~$6-$7 less than impressions targeting older brackets. However, average costs are generally consistent within pages, with cost differences rarely exceeding $1-$2.